home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / C64 / I-Info Magazine / (c)i19.d64 / ultra seq-print (.txt) < prev    next >
Commodore BASIC  |  2007-02-04  |  11KB  |  238 lines

  1. 1 MD=10916:SP=12094:GP=12156:OC=12230:CC=12233:CR=12465:WW=12592:RP=12628
  2. 2 POKE53280,.:POKE53281,.:POKE788,52:DIMA$(112):PRINTCHR$(142):SO=12955:EZ=13047
  3. 3 S=1:A=0:REM SET SOUND & ASCII CONVERT DEFAULTS   1=ON - 0=OFF
  4. 4 PRINT"[147][158]":K=7:A$="[213][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][201]":GOSUB10
  5. 5 K=8:A$="[221]    ULTRA SEQ-PRINT    [221]":GOSUB10
  6. 6 K=9:A$="[221]      VERSION 5.5      [221]":GOSUB10
  7. 7 K=10:A$="[221]  R.W. (BOB K7) KOBER  [221]":GOSUB10
  8. 8 K=11:A$="[202][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][203]":GOSUB10
  9. 9 GOSUB229:ON-(PEEK(2025)=7)GOTO13:GOTO25
  10. 10 M=LEN(A$):FORI=1TOM/2:PRINT"":FORJ=1TOK:PRINT"";:NEXT
  11. 11 PRINTSPC(20-I)LEFT$(A$,I)RIGHT$(A$,I):NEXT
  12. 12 RETURN
  13. 13 FORI=1TO1000:NEXT:FORI=1TO8:SYS59626:NEXT:POKE2025,2
  14. 14 K=6:A$="[150]THESE M/L ROUTINES ARE USED ":GOSUB10
  15. 15 K=7:A$="[155][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196] ":GOSUB237:GOSUB10:GOSUB229
  16. 16 K=9:A$="[159]READ/PRINT/SCROLL":GOSUB237:GOSUB10:GOSUB229
  17. 17 K=11:A$="[153]MI'S  DIRECTORY":GOSUB237:GOSUB10:GOSUB229
  18. 18 K=13:A$="[156]IT'S CURTAINS":GOSUB237:GOSUB10:GOSUB229
  19. 19 K=15:A$="[129]2-COL. READ":GOSUB237:GOSUB10:GOSUB229
  20. 20 K=17:A$="[154]SNAP-SHOT":GOSUB237:GOSUB10:GOSUB229
  21. 21 K=19:A$="[158]EZDIR":GOSUB237:GOSUB10:GOSUB229
  22. 22 K=23:A$="[151]ANY KEY TO START[145]":GOSUB10:POKE198,.:WAIT198,1:POKE198,0
  23. 23 POKE150,160:SYSSP:GOTO25
  24. 24 POKE150,160:SYSGP:POKE198,.:WAIT198,1:POKE198,.
  25. 25 POKE53280,.:POKE53281,.
  26. 26 SYSCC:POKE53272,21:PRINT"[147]"TAB(8)"[144][213][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][201]"
  27. 27 PRINTTAB(8)"[221]      MAIN MENU      [221]"
  28. 28 PRINTTAB(8)"[202][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][203]"
  29. 29 FORI=1TO300:NEXT:POKE2,5:POKE878,20:SYSOC
  30. 30 IFBOBTHENPOKE150,168:SYSGP:GOTO49
  31. 31 PRINTTAB(43)"USE      EMBEDDED <CR>      IGNORE"
  32. 32 PRINTTAB(2)"[150][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  33. 33 PRINTTAB(3)"[158][169]  [223][146][150]                         [158][129][169]  [223][155][146]"
  34. 34 PRINTTAB(3)"[158] F1 [146][150]  SEND OUTPUT TO SCREEN  [129] F2 [146]"
  35. 35 PRINTTAB(3)"[158][223]  [146][169][150]                        [158] [129][223]  [146][169]"
  36. 36 PRINTTAB(42)"[154][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  37. 37 PRINTTAB(3)"[149][169]  [223][146]                         [156][169]  [223]"
  38. 38 PRINTTAB(3)"[149] F3 [146]  [154]40 COLUMNS TO PRINTER  [156] F4 [146]"
  39. 39 PRINTTAB(3)"[149][223]  [146][169]                         [156][223]  [146][169]"
  40. 40 PRINTTAB(42)"[153][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  41. 41 PRINTTAB(3)"[152][169]  [223][146]                         [150][169]  [223]"
  42. 42 PRINTTAB(3) "[152] F5 [146] [153] 80 COLUMNS TO PRINTER  [150] F6 [146]"
  43. 43 PRINTTAB(3)"[152][223]  [146][169]                         [150][223]  [146][169]"
  44. 44 PRINTTAB(42)"[156][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  45. 45 PRINTTAB(3)"[169]  [223][146]                         [169]  [223]"
  46. 46 PRINTTAB(3) " F7 [146][156] DISK HOUSEKEEPING  [129]QUIT  F8 [146]"
  47. 47 PRINTTAB(3)"[223]  [146][169]                         [223]  [146][169]"
  48. 48 IFBO=0THENBOB=1:POKE150,168:SYSSP
  49. 49 POKE198,.:CLOSE15:OPEN15,8,15:GOTO231
  50. 50 GETA$:ON-(A$="A")GOTO99:ON-(A$="S")GOTO230:IFA$<"[133]"ORA$>CHR$(141)THEN50
  51. 51 F$=RIGHT$(STR$(ASC(A$)-132),1)
  52. 52 ON(ASC(A$)-132)GOTO53,55,57,128,54,56,58,123,228:GOTO50
  53. 53 GOSUB75:GOSUB59:GOTO71
  54. 54 F$="2":GOTO53
  55. 55 F$="3":POKE600,0:GOSUB76:GOSUB59:ONCOLGOTO70,195
  56. 56 F$="4":POKE600,1:GOSUB76:GOSUB59:ONCOLGOTO70,195
  57. 57 F$="5":GOSUB77:GOSUB59:GOTO70
  58. 58 F$="6":GOSUB77:GOSUB59:GOTO70
  59. 59 PRINT"":POKE214,X-2:PRINT:PRINT"[152]  ($=DIRECTORY M=MENU)[145][145]"
  60. 60 POKE19,32:INPUT"[158]  ENTER SEQ FILENAME [153]$[157]";FF$
  61. 61 IFFF$="M"THEN30
  62. 62 IFFF$<>"$"THENSYSCC:X1=34:RETURN
  63. 63 CLOSE15:OPEN15,8,15:IFFF$="$"THENPRINT#15,"I":INPUT#15,E,E$:IFETHENPRINT"[147]":GOSUB119
  64. 64 IFETHEN26
  65. 65 SYSCC:PRINTCHR$(142):SYSMD:PRINT:CLOSE15:OPEN15,8,15:SYSCC
  66. 66 IFPEEK(598)=34THEN26
  67. 67 X1=0:FF$=""
  68. 68 FF=PEEK(580+X1):IFFF=34THENRETURN
  69. 69 FF$=FF$+CHR$(FF):X1=X1+1:GOTO68
  70. 70 OPEN4,4,7:GOSUB112:IFQQTHEN26
  71. 71 OPEN2,8,2,FF$:GOSUB118:ON-(E<>0)GOTO26:GOSUB84
  72. 72 CLOSE2:CLOSE4:SYS65511:OPEN15,8,15:X1=0
  73. 73 GOSUB81:POKE214,23:PRINT:PRINT"        [150] [208]RESS F5 FOR THE [205]ENU [146]        [145]"
  74. 74 GETA$:ON-(A$<>CHR$(135))GOTO74:GOTO26
  75. 75 FORX=6TO8:POKE781,X:SYS59903:NEXT:RETURN
  76. 76 FORX=11TO13:POKE781,X:SYS59903:NEXT:GOSUB78:RETURN
  77. 77 FORX=16TO18:POKE781,X:SYS59903:NEXT:RETURN
  78. 78 POKE214,11:PRINT:PRINTTAB(6)"1[146] OR [154]2[146] COLUMNS?"
  79. 79 GETCOL$:IFCOL$<"1"ORCOL$>"2"THEN79
  80. 80 COL=VAL(COL$):RETURN
  81. 81 ON-(S=0)GOTO236:FORL=54272TO54295:POKEL,0:NEXT:POKE54296,15:POKE54277,8:POKE54278,255
  82. 82 POKE54276,23:FORY=1TO3:F2=8:POKE54273,2:FORX=1TO5:POKE54287,F2:F2=F2*1.4
  83. 83 NEXT:NEXT:FORW=1TO8:POKE54287,F2:F2=F2*1.07:NEXT:POKE54278,15:RETURN
  84. 84 RP$="[208][210][201][206][212][197][210]":IFF$="1"ORF$="2"THENRP$="[210][197][193][196][197][210] "
  85. 85 SYSCC:PRINTCHR$(14):PRINT"[147]"TAB(2)"[144]***********************************"
  86. 86 PRINTTAB(2)"*    [198]"F$" [213][204][212][210][193][160][211][197][209]-[198][201][204][197][160]"RP$"    *"
  87. 87 PRINTTAB(2)"***********************************"
  88. 88 POKE214,23:PRINT:PRINT"[200]OLD SHIFT TO PAUSE - [208]RESS F6 TO ABORT[145][145]"
  89. 89 FORI=1TO300:NEXT:POKE2,12:POKE878,20:SYSOC
  90. 90 POKE214,23:PRINT:PRINT"[150][200]OLD SHIFT TO PAUSE - [158][208]RESS F6 TO ABORT[145][145]"
  91. 91 ONVAL(F$)GOTO92,93,94,95,96,97
  92. 92 SYSRP,40,0,0:X1=0:RETURN
  93. 93 SYSRP,39,1,0:X1=0:RETURN
  94. 94 GOSUB98:SYSRP,40,0,1:X1=0:RETURN
  95. 95 GOSUB98:SYSRP,39,1,1:X1=0:RETURN
  96. 96 GOSUB98:SYSRP,80,0,1:XI=0:RETURN
  97. 97 GOSUB98:SYSRP,79,1,1:XI=0:RETURN
  98. 98 FORI=1TO5:PRINT#4:NEXT:RETURN
  99. 99 A=1-A:POKE820,A
  100. 100 GOTO234
  101. 101 POKE198,.:WAIT198,1:FORX=11TO13:POKE781,X:SYS59903:NEXT:PRINT"[145][145][145][145]":GOTO310
  102. 102 ON-(S=0)GOTO236:FORL=54272TO54295:POKEL,0:NEXT:POKE54296,15:POKE54277,8:POKE54278,255
  103. 103 POKE54276,21:POKE54287,40:FORZ=1TOT:FORF1=255TO0STEP-6:POKE54273,F1:NEXTF1
  104. 104 FORF1=0TO255STEP50:POKE54273,F1:NEXTF1:NEXTZ:FORF2=15TO0STEP-.1
  105. 105 POKE54296,F2:NEXT:POKE54277,128:POKE54278,250:RETURN
  106. 106 ON-(S=0)GOTO236:FORL=54272TO54295:POKEL,0:NEXT:POKE54296,15
  107. 107 POKE54277,8:POKE54278,255:POKE54276,23
  108. 108 FORZ=1TO1:F1=10:FORY=1TO6:F2=30:POKE54273,F1:FORX=1TO3:POKE54287,F2
  109. 109 F2=F2/1.2:NEXTX:F1=F1*1.5:NEXTY:FORW=1TO30:POKE54273,F1
  110. 110 POKE54287,5:FORV=1TO5:NEXTV
  111. 111 F1=F1/1.5:NEXTW:NEXTZ:POKE54278,15:RETURN
  112. 112 CLOSE4:IFST=0THENOPEN4,4,7:QQ=0:RETURN
  113. 113 PRINT"[150]      THE PRINTER IS NOT ON LINE"
  114. 114 PRINT"     TURN IT ON, AND PRESS ANY KEY"
  115. 115 PRINT"        PRESS F5 FOR THE MENU":GOSUB106
  116. 116 WAIT198,1:GETA$:IFA$="[135]"THENQQ=1:RETURN
  117. 117 OPEN4,4,7:GOTO112
  118. 118 INPUT#15,E,E$:IFE=0THENRETURN
  119. 119 PRINT"[147]         DISK ERROR ENCOUNTERED"
  120. 120 PRINTTAB(20-LEN(E$)/2)E$:GOSUB106
  121. 121 PRINT"          ANY KEY TO CONTINUE"
  122. 122 WAIT198,1:CLOSE2:CLOSE4:RETURN
  123. 123 K=21:A$=" [158]     ARE YOU SURE?     ":GOSUB10
  124. 124 WAIT198,1:GETA$:ON-(A$="Y")GOTO126:PRINT"[145][145][145]"
  125. 125 GOTO30
  126. 126 PRINT"[150]";:PRINTTAB(8)" USE ULTRA AGAIN, SOON "
  127. 127 POKE198,.:T=3:GOSUB102:SYS65126
  128. 128 FF=0
  129. 129 PRINT"[155]":POKE214,8:PRINT
  130. 130 PRINTTAB(6)"[213][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][201]"
  131. 131 PRINTTAB(6)"[221]                         [221]"
  132. 132 PRINTTAB(6)"[221] DISK HOUSE KEEPING MENU [221]"
  133. 133 PRINTTAB(6)"[221] [183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183] [221]"
  134. 134 PRINTTAB(6)"[221]                         [221]"
  135. 135 PRINTTAB(6)"[221] 1. SCRATCH A FILE       [221]"
  136. 136 PRINTTAB(6)"[221] 2. RE-NAME A FILE       [221]"
  137. 137 PRINTTAB(6)"[221] 3. FORMAT (NEW) A DISK  [221]"
  138. 138 PRINTTAB(6)"[221] 4. VIEW DIRECTORY       [221]"
  139. 139 PRINTTAB(6)"[221] 5. RETURN TO MAIN MENU  [221]"
  140. 140 PRINTTAB(6)"[221]                         [221]"
  141. 141 PRINTTAB(6)"[202][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][203]"
  142. 142 POKE198,.:WAIT198,1:GETA$:ON-(A$="[135]")GOTO30:IFA$<"1"ORA$>"5"THEN142
  143. 143 K=VAL(A$)
  144. 144 ONKGOTO150,175,188,240,30
  145. 145 POKE512,32:RETURN
  146. 150 PRINT"[147][129]":POKE53280,.:POKE53281,.
  147. 151 PRINTTAB(40)"                                        ";
  148. 152 PRINT"    THIS ROUTINE WILL SCRATCH A FILE    ";
  149. 153 PRINT"                                        "
  150. 154 PRINTTAB(42)"ENTER 'M' TO RETURN TO THE MENU."
  151. 155 PRINTTAB(42)"ENTER '$' TO LIST THE FILE DIRECTORY."
  152. 156 PRINT"[158]----------------------------------------";
  153. 157 IFFF=34THEN161
  154. 158 POKE19,32:INPUT"[155] ENTER FILENAME [150]$[157]";FF$:POKE19,.:PRINT
  155. 159 IFFF$="$"THENGOSUB63:GOTO150
  156. 160 IFFF$="M"THEN26
  157. 161 B$="[155]SCRATCH SEQ FILE [150]"+CHR$(34)+FF$+CHR$(34)
  158. 162 FF=0:PRINT""TAB(21-LEN(B$)/2)B$
  159. 163 PRINTTAB(90)"[158]ARE YOU SURE?? (Y/N)"
  160. 164 GETK$:IFK$=""THEN164
  161. 165 IFK$<>"Y"THENFF$="":GOTO150
  162. 166 B$=" SCRATCHING  "+FF$+" ":PRINTTAB(20-LEN(B$)/2)B$
  163. 167 PRINT#15,"S0:"FF$
  164. 168 INPUT#15,ER,ER$,T,B:IFK=2ORK=3THENRETURN
  165. 169 G9$=LEFT$(ER$,4)+RIGHT$(ER$,10)
  166. 170 E9$=" "+FF$+" [146] "+G9$
  167. 171 IFT=.THENPRINTTAB(48)"**** FILE NOT FOUND ****":GOSUB106:GOTO150
  168. 172 IFT=.THENFORI=1TO1500:NEXT:GOTO150
  169. 173 PRINTTAB(60-LEN(E9$)/2)E9$
  170. 174 GOSUB81:FORI=1TO1000:NEXT:GOTO26
  171. 175 FORX=20TO23:POKE781,X:SYS59903:NEXT
  172. 176 PRINT"":POKE214,20:PRINT:PRINTTAB(9)"OLD NAME = ";
  173. 177 IFFF=34THENFF=0:PRINT""FF$;:PN$=FF$:POKE783,.:GOTO180
  174. 178 POKE19,32:INPUT"$[157]";PN$:POKE19,.:PRINT:IFPN$="4"THEN30
  175. 179 IFPN$="$"THENFF$=PN$:POKE150,96:SYSSP:GOSUB63:POKE150,96:SYSGP:GOTO176
  176. 180 POKE214,21:PRINT
  177. 181 PRINTTAB(9)"NEW NAME = ";
  178. 182 POKE19,32:INPUT" [157]";NN$:POKE19,.:POKE781,21:SYS59903:POKE214,21:PRINT
  179. 183 IFNN$="4"THEN30
  180. 184 CN$ =" "+PN$+" [146] IS "+NN$+" [146]":IFLEN(CN$)<33THENCN$ = CN$+"      "
  181. 185 PRINT "[158]"TAB(22-LEN(CN$)/2)CN$"[145][145]":PRINT#15,"R0:"+NN$+"="+PN$
  182. 186 GOSUB118:IFETHEN26:REMRWK
  183. 187 GOSUB81:GOTO26
  184. 188 PRINT TAB(2)"[158]          ---WARNING!!!---          "
  185. 189 PRINT"  ALL DATA ON THE DISK TO BE FORMATTED"
  186. 190 PRINT"  WILL BE DESTROYED - OK TO CONTINUE?"
  187. 191 POKE198,.:WAIT198,1:GETA$:POKE198,.:IFA$<>"Y"THEN30
  188. 192 PRINT"[145][154]   OKAY - FORMATTING TAKES 90 SECONDS"
  189. 193 PRINT#15,"N:ULTRA SEQ-FILES,RK":GOSUB168:IFER<>0THENGOSUB119
  190. 194 GOTO30
  191. 195 CLOSE4:OPEN4,4,7:GOSUB112:IFQQTHEN26
  192. 196 L=0:PRINT"[147][151]":POKE53280,11:POKE53281,11
  193. 197 POKE53272,23:PRINT""TAB(3)"                                  "
  194. 198 PRINTTAB(3)" << [210]EADING [198]ILE [201]NTO AN [193]RRAY >> "
  195. 199 PRINTTAB(3)"                                  "
  196. 200 POKE787,25:POKE2,15:SYSOC
  197. 201 IFLTHENPRINT""TAB(43)"[155] << [210]EADING [198]ILE [201]NTO AN [193]RRAY >> "
  198. 202 POKE214,23:PRINT
  199. 203 PRINT"  [150][200][207][204][196] [211][200][201][198][212][153] TO [208]AUSE ---- [158][198]6[153] TO [193]BORT[145][145][145][159]":IFLTHENL=0:GOTO206
  200. 204 OPEN2,8,2,FF$:GOSUB118:IFETHEN25
  201. 205 YY=1:POKECR-2,0:SYSCR
  202. 206 FORK=1TO112:A$(K)="":NEXT:U=0
  203. 207 ON-(PEEK(CR-3)<>0)GOTO215:IFPEEK(CR-2)>80THENPOKE(CR-2),0
  204. 208 FORX=0TOPEEK(CR-2):AA$=CHR$(PEEK(512+X))
  205. 209 A$(YY)=A$(YY)+AA$:IFLEN(A$(YY))>40THENYY=YY+1
  206. 210 NEXT:SYSSO:POKE214,19:PRINT:PRINTA$(YY):YY=YY+1:ON-(PEEK(600)=0)GOSUB145:SYSWW
  207. 211 IFPEEK(653)=1THENPOKE214,23:PRINT:PRINT"  [150][210][197][204][197][193][211][197][153] TO [195]ONTINUE [145]":U=1
  208. 212 IFPEEK(653)=1THENON-(PEEK(197)=6)GOTO226:GOTO211
  209. 213 IFUTHENPRINT"  [150][200][207][204][196] [211][200][201][198][212][153] TO [208]AUSE ---- [158][198]6[153] TO [193]BORT[145][145][145][159]":U=0
  210. 214 ON-(YY=112)GOTO217:PRINT:GOTO207
  211. 215 FORX=0TOPEEK(CR-2)-1:AA$=CHR$(PEEK(512+X)):A$(YY)=A$(YY)+AA$:NEXT
  212. 216 SYSSO:POKE214,19:PRINT:PRINTA$(YY):CLOSE2:SYS65511:OPEN4,4,7
  213. 217 PRINT""TAB(44)"[155]      << [196]ATA TO [208]RINTER >>     "
  214. 218 FORI=1TO5:PRINT#4:NEXT
  215. 219 IFYY/2<>INT(YY/2)THENYY=YY+1
  216. 220 I1=YY/2:FORII=1TOI1
  217. 221 PRINT#4,A$(II);TAB(40-LEN(A$(II)));A$(II+I1)
  218. 222 IFPEEK(653)=1THENPOKE214,23:PRINT:PRINT"  [150][210][197][204][197][193][211][197][153] TO [195]ONTINUE [145]":U=1
  219. 223 IFPEEK(653)=1THENON-(PEEK(197)=6)GOTO226:GOTO222
  220. 224 IFUTHENPRINT"  [150][200][207][204][196] [211][200][201][198][212][153] TO [208]AUSE ---- [158][198]6[153] TO [193]BORT[145][145][145][159]":U=0
  221. 225 NEXT:FORI=1TO5:PRINT#4:NEXT:IFYY>111THENYY=1::L=1:GOTO201
  222. 226 T=1:GOSUB102:CLOSE2:SYSCC:PRINT"[147]":POKE53280,.:POKE53281,.:SYS65511
  223. 227 OPEN15,8,15:BOB=0:GOTO26
  224. 228 POKE2025,7:RUN
  225. 229 FORD=1TO1200:NEXT:RETURN
  226. 230 S=1-S:GOSUB237
  227. 231 PRINT"[158] SOUND":IFSTHENPRINT"  ON "
  228. 232 IFS=0THENPRINT"  OFF"
  229. 234 PRINT""TAB(33)"[145][145]ASCII":IFATHENPRINT""TAB(34)"[145]ON "
  230. 235 ON-(A=1)GOTO50:PRINT""TAB(34)"[145]OFF":GOTO50
  231. 236 RETURN
  232. 237 ON-(NS=1)GOTO236:FORI=54272TOI+23:POKEI,.:NEXT
  233. 238 SI=54272:POKESI+1,106:POKESI+5,12:POKESI+6,15
  234. 239 POKESI+24,15:POKESI+15,30:POKESI+4,21:RETURN
  235. 240 SYSEZ
  236. 241 POKE214,23:PRINT:PRINTTAB(10)"[158] ANY KEY TO CONTINUE ";:WAIT198,1:POKE198,.
  237. 242 GOTO25
  238.